1 using System.Collections;
2 using
System.Collections.Generic;
3 using
UnityEngine;
4
5 public
class LoadPuzzleGame : MonoBehaviour {
6
7    
[SerializeField]
8     
private PuzzleGameManager puzzleGameManager;
9
10     
[SerializeField]
11     
private LevelLocker levelLocker;
12
13     
[SerializeField]
14     
private LayoutPuzzleButtons layoutPuzzleButtons;
15
16     
[SerializeField]
17     
private GameObject puzzleLevelSelectPanel;
18
19     
[SerializeField]
20     
private Animator puzzleLevelSelectAnim;
21
22     
[SerializeField]
23     
private GameObject puzzleGamePanel1, puzzleGamePanel2, puzzleGamePanel3, puzzleGamePanel4, puzzleGamePanel5;
24
25     
[SerializeField]
26     
private Animator puzzleGamePanelAnim1, puzzleGamePanelAnim2, puzzleGamePanelAnim3, puzzleGamePanelAnim4, puzzleGamePanelAnim5;
27
28     
private int puzzleLevel;
29
30     
private string selectedPuzzle;
31
32     
private List<Animator> anims;
33
34     
public void LoadPuzzle (int level, string puzzle)
35     {
36         
this.puzzleLevel = level;
37         
this.selectedPuzzle = puzzle;
38
39         layoutPuzzleButtons.LayoutButtons(level, selectedPuzzle);
40
41         
switch (puzzleLevel)
42         {
43             
case 0:
44                 StartCoroutine(LoadPuzzleLevelGamePanel(puzzleGamePanel1, puzzleGamePanelAnim1));
45                 
break;
46
47             
case 1:
48                 StartCoroutine(LoadPuzzleLevelGamePanel(puzzleGamePanel2, puzzleGamePanelAnim2));
49                 
break;
50
51             
case 2:
52                 StartCoroutine(LoadPuzzleLevelGamePanel(puzzleGamePanel3, puzzleGamePanelAnim3));
53                 
break;
54
55             
case 3:
56                 StartCoroutine(LoadPuzzleLevelGamePanel(puzzleGamePanel4, puzzleGamePanelAnim4));
57                 
break;
58
59             
case 4:
60                 StartCoroutine(LoadPuzzleLevelGamePanel(puzzleGamePanel5, puzzleGamePanelAnim5));
61                 
break;
62
63         }
64     }
65
66     
public void BackToPuzzleLevelSelectMenu()
67     {
68         anims = puzzleGameManager.ResetGameplay();
69
70         levelLocker.CheckWhichLevelsAreUnlocked(selectedPuzzle);
71
72         
switch (puzzleLevel)
73         {
74             
case 0:
75                 StartCoroutine(LoadPuzzleLevelSelectMenu(puzzleGamePanel1, puzzleGamePanelAnim1));
76                 
break;
77
78             
case 1:
79                 StartCoroutine(LoadPuzzleLevelSelectMenu(puzzleGamePanel2, puzzleGamePanelAnim2));
80                 
break;
81
82             
case 2:
83                 StartCoroutine(LoadPuzzleLevelSelectMenu(puzzleGamePanel3, puzzleGamePanelAnim3));
84                 
break;
85
86             
case 3:
87                 StartCoroutine(LoadPuzzleLevelSelectMenu(puzzleGamePanel4, puzzleGamePanelAnim4));
88                 
break;
89
90             
case 4:
91                 StartCoroutine(LoadPuzzleLevelSelectMenu(puzzleGamePanel5, puzzleGamePanelAnim5));
92                 
break;
93
94         }
95     }
96
97     IEnumerator LoadPuzzleLevelSelectMenu(GameObject puzzleGamePanel, Animator puzzleGamePanelAnim)
98     {
99         puzzleLevelSelectPanel.SetActive(
true);
100         puzzleLevelSelectAnim.Play(
"Slide_In");
101         puzzleGamePanelAnim.Play(
"SlideOut");
102
103         
yield return new WaitForSeconds(1f);
104
105         
foreach(Animator anim in anims)
106         {
107             anim.Play(
"Idle");
108         }
109
110         
yield return new WaitForSeconds(.5f);
111
112         puzzleGamePanel.SetActive(
false);
113
114     }
115
116     IEnumerator LoadPuzzleLevelGamePanel(GameObject puzzleGamePanel, Animator puzzleGamePanelAnim)
117     {
118         puzzleGamePanel.SetActive(
true);
119         puzzleGamePanelAnim.Play(
"SlideIn");
120         puzzleLevelSelectAnim.Play(
"Slide_Out");
121         
yield return new WaitForSeconds(1f);
122         puzzleLevelSelectPanel.SetActive(
false);
123     }
124
125
126
127
128
129
130 }



Full source code giải đố hình đơn giản 16.640 lượt xem

Gõ tìm kiếm nhanh...